// Copyright (c) Symbian Ltd 2008. All rights reserved.
#ifndef ROSHAMBO_H_
#define ROSHAMBO_H_

#include <e32base.h>

class TRoshambo
	{
public:
	enum TResult {EWin, EDraw, ELose, ENoContest};
	enum TElement {EInvalid = -2, ENone = -1, ERock = 0, EPaper = 1, EScissors = 2};
public:
	inline TElement LocalPlayer() const {return (iLocalPlayer);};
	inline TElement Opponent() const {return (iOpponent);};
	inline void SetLocalPlayer(TElement aLocalPlayer) {iLocalPlayer=aLocalPlayer;};
	inline void SetOpponent(TElement aOpponent) {iOpponent=aOpponent;};
	inline void ResetPlayers() {iLocalPlayer = iOpponent = EInvalid;};
public:
	TRoshambo();
	void SinglePlayerGame(TElement aLocalPlayer);
	TRoshambo::TResult CalculateResult() const;
private:
	TElement iLocalPlayer;
	TElement iOpponent;
	};

class TRpsData
	{
public:
	enum TRpsControl {EPlay, EElement};   	
public:
	TRoshambo::TElement iElement;
	TRpsControl iRpsControl;
	};

#endif // ROSHAMBO_H_
